1. Field of the Invention
The[SMG1] present invention relates to field of software and software system development and more particularly to the model driven development of a software application.
2. Description of the Related Art
Modern systems have become increasingly integrated open-ended and are increasingly dependent on their embedded software to deliver functionality. Modern software applications are expected to deliver critical computing services in a dependable manner across multiple, heterogeneous computing environments. To better manage the complexity of developing modern software or systems, development strategies can be employed which raise the level of abstraction at which systems are conceived, implemented and evolved.
“Methodware” refers to a unified framework for system development project management. Generally, a unified framework provides both course and granular methods within a methods architecture for specifying, planning and executing a software or system development project. Course framework methods refer to the specification of the entirety of the development project in accordance with the business requirements and resources allocable for the project. Granular framework methods refer to the planning of different iterations of the project specification in order to achieve milestones for each development phase. The latter portion of a unified framework can be automated and can involve generalized project management tools.
The Rational Unified Process™ (RUP) and its extension RUP SE™ are iterative, life cycle development unified frameworks for developing software and systems. RUP and RUP SE provide guidance on how to manage programs with inherent initial uncertainty. An important aspect of both RUP and RUP SE that they entail a sequence of iterations in which the system or software is built up in increments. These iterations are intended to provide the program managers control points, which can be used to assess results achieved and reset the project activities to maximize the likelihood of achieving the overall program goals.
In the study of planning different iterations of a project specification, it has been well established that system and software development projects are inherently uncertain and nonlinear. Nevertheless, standard “earned value” methods for evaluating the budget and schedule status of programs do not account for the uncertainty of the initial program cost and schedules and estimates. Moreover, standard earned value methods for evaluating the budget and schedule status of programs assume a linear relationship between the effort expended and dollars spent and the results achieved.
In RUP and RUP SE, the going-forward plan is reassessed at the conclusion of each iteration of a development project. Generally, major milestones such as phase boundaries and iterations in the RUP and RUP SE project are static while the detail activities are dynamic. Thus, at each milestone, it would be advantageous to apply program metrics to facilitate an ongoing evaluation of the cost to complete the project and the likely return expected for the completed project.
In U.S. Pat. No. 6,862,579 to Matthews et al. for SYSTEMS, METHODS AND COMPUTER PROGRAM PRODUCTS FOR PERFORMING A GENERALIZED CONTINGENT CLAIM VALUATION (hereinafter Matthews), a methodology is disclosed which relates to the valuation of a contingent claim through an initial determination of the present value distribution of contingent future benefits attributable to the exercise of a contingent claim. The Matthews methodology, referred to in the art as the Datar-Matthews algorithm, is closely related to the Black-Sholes methodology for options valuation in the financial markets. However, Matthews specifically proposes to apply the valuation of the contingent claim to project analysis.
In particular, in Matthews, it is suggested that the Datar-Matthews algorithm can be applied to a series of contingent claims which occur at different points in time in the future. In this situation, an election can be made during the course of a project to make further investments in the project, or to terminate the project based upon the application of the Datar-Matthews algorithm. Notwithstanding, an optimal application of Datar-Matthews algorithm to project analysis in the context of methodware cannot be realized in that the Datar-Matthews algorithm computes the volatility of the parameter for the Black-Scholes method only at the outset of the project. Yet, it is to be recognized by the skilled artisan that the volatility of a project changes from iteration to iteration in the project development lifecycle.